Polish English
Runaurufu "If you don't hava a plan - do not follow plan of others"

VirtualBox i współdzielenie katalogów

Host: Windows (testowane na XP, Vista, Win 7)
Guest: Linux (testowane na Ubuntu i OpenSuse)

Wiele osób miewa problemy z dostępem do współdzielonych katalogów poprzez domyślne możliwości Virtual Boxa (w tym również i ja ;p ), a używanie pendrive do przenoszenia danych nie zawsze jest możliwe (np. brak wolnego portu USB ^^), a już na pewno jest mało profesjonalne. Na szczęście na ratunek przychodzi fstab...

Ale po kolei...

Adres IP

Po pierwsze potrzebować będziemy adresu IP komputera ze współdzielonym katalogiem, przy czym współdzielony katalog nie musi znajdować się na maszynie hosta - to zarówno może być inna maszyna wirtualna, jak i całkowicie inny komputer w tej sieci
Jeśli zdecydujemy się łączyć z tym samym komputerem, na którym uruchomiona jest wirtualizacja, to warto wiedzieć, że domyślnym adresem IP maszyny hostującej jest 10.0.2.2, więc jeśli łączmy się z tym samym komputerem to w większości przypadków można użyć tego adresu zamiast adresu wewnętrznej karty sieciowej VirtualBoxa.
Jeśli jednak powyższy adres z jakiś przyczyn nie pozwala nam dostać się do maszyny hosta, to należy wykorzystać adres IP karty utworzonej przez VB. By go uzyskać możemy zarówno w cmd wpisać "ipconfig" i w wyniku wyszukać karty w nazwie posiadającej "VirtualBox". Można również odczytać to IP klikając w menu VB


Wybieramy "Plik"->"Globalne ustawienia"

Przechodzimy do zakładki "Sieć", wybieramy adapter sieciowy i klikamy ikonkę śrubokręta

Adres IP hosta znajduje się właśnie w tym podświetlonym polu

Udostępniamy folder w Windowsie

Udostępniając należy pamiętać, żeby umożliwić zapis i modyfikację zawartości folderu dla użytkownika, którego będziemy używać do połączenia.

Czary mary w Linuxie

Po uruchomieniu systemu tworzymy folder, do którego będziemy montować nasz zasób.
mkdir /mnt/win
Następnie otwieramy plik fstab (/etc/fstab) jako root i dodajemy linię:
//192.167.56.1/Shared /mnt/win smbfs rw,umask=777,uid=LinuxUser,username=WinUser,password=WinPassword,auto 0 0
Ogólna postać:
//{IP maszyny}/{nazwa współdzielonego udziału} {ścieżka do katalogu, w którym chcemy udział zamontować} {system plików} rw,umask=777,uid={nazwa użytkownika w systemie Linux},username={nazwa użytkownika w systemie Windows},password={hasło użytkownika w systemie Windows},auto 0 0
Warto zwrócić uwagę na to pod jakiego użytkownika systemu Linux montujemy udział, gdyż użytkownik ten będzie właścicielem wszystkich plików w tym udziale się znajdujących (nie musi to być root) :)

W przypadku jeśli nie mamy zainstalowanego smbfs można spróbować zastąpić go cifsem - należy jednak nieznacznie zmienić wpis w pliku fstab:
//192.167.56.1/Shared /mnt/win cifs file_mode=0777,dir_mode=0777,uid=LinuxUser,username=WinUser,password=WinPassword,auto 0 0

Pamiętaj o zapisaniu wprowadzonych zmian!

Krok ostatni

Na sam koniec należy zamontować udział za pomocą komendy mount:
mount /mnt/win Jeśli nie wysypało błędami to możemy cieszyć się z zamontowanego udziału i nieskrępowanego doń dostępu... jeśli zaś wysypało to zostaje sprawdzenie co to są za błędy i odnalezienie na nie rozwiązania :)

Problemy

  • "mount: unknown filesystem type 'smbfs'
    Przyczyna: Zapewne nie masz zainstalowanego smbfs :)
    Rozwiązanie: Spróbuj użyć cifs zamiast smbfs, lub zainstaluj smbfs (sudo apt-get install smbfs)

Wpis ten jest odświeżoną wersją mojego wpisu sprzed lat.

2013-05-10 20:22:46
2014-10-12 17:10:49

Categories: IT related

Comments

Hi, I have a question regrading the legality of recording and posting story times on Youtube. We want to do this at our library because we have some kids who can't make it to the library for regular Story Times. Basically, I want to know whether this violates copyright because we'd be reading the whole story. We wouldn't be showing any of the patrons' faces (we'd probably still have them sign waivers just in case), but that shouldn't be the major legal issue. Thanks for the advice!
Donnie
Unfortunately it didn’t work for me; I gotmount error: peirmssion denied or not superuser and mount.cifs not installed SUID I too had this problemYou have to set the right owner for the mount pointfor example, about the command://server/share /mnt cifs rw,user,noauto,username=user,password=pass 0 0/mnt has to be owned by user:user_groupps. remember to add suid to umount.cifs too a0|a0
Abanobi

Write new comment

Author:
Email (visible only to administration):
Website: